import { ResUtils } from "./ResUtils";

export default class ConfigUtils{
    

    /**加载配置表 */
    public static readArrayCfgFunc<T>(path: string, outMap: { [key: string]: any } = {}): Promise<number> {
        return new Promise<any>((resolve, reject) => {
            ResUtils.loadRes<[T]>(path).then((data) => {
                //id为非主键导出格式
                for (let i = 0; i < data.length; i++) {
                    if (!data[i]["id"]) { break }
                    outMap[`${data[i]["id"]}`] = data[i]
                }
                resolve(data.length);
            }).catch(() => {
                reject();
            })
        })
    }
    public static readMapCfgFunc(path: string): Promise<any> {
        return ResUtils.loadRes(path);
    }
    // /**加载id为主键导出格式配置表 */
    // public static readMapCfgFunc<T>(path: string): Promise<{ [key: string]: T }> {
    //     return Utils.loadRes<{ [key: string]: T }>(path);
    //     // return new Promise<any>((resolve,reject)=>{
    //     //     Utils.loadRes<{ [key: string]: T }>(path).then((data)=>{
    //     //         //适用于id为主键导出格式
    //     //         // for (const key in data) {
    //     //         //     const one = data[key];
    //     //         //     outMap[key] = one;
    //     //         // }
    //     //         resolve(data);
    //     //     }).catch(()=>{
    //     //         reject();
    //     //     })
    //     // })
    // }

}